package main.java.tmi.order.service;

import java.sql.SQLException;
import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;

/**
 * Test Service Interface
 *
 * @author min
 * @since 2010. 09. 10.
 */
public interface OrderService {
	//키값
	String getMaxOdrSeq(String ord1) throws Exception;
	
	//저장
	void addOrder(Map<String,String> param , HttpServletRequest request) throws Exception;
	
	//키값
	String orderDupChk(String ord1) throws Exception;
		
	
	//수정
	boolean modifyOrder(Map<String,String> param , HttpServletRequest request) throws Exception;

	//삭제
	boolean deleteOrder(Map<String,String> param) throws Exception;
	
	//조회
	Map<String,String> getOrderView(Map<String,String> param) throws Exception;
	
	
	/*ORDER DETAIL*/
	//조회
	List<OrderVO> getOrderDetailList(Map<String,String> param) throws Exception;
	
	//삭제
	boolean delOdrDetail(Map<String,String> param) throws Exception;
	
	//저장
	int addOrderDetail(Map<String,String> param) throws Exception;
	
	//수정
	boolean detailUpdate(Map<String,String> param) throws Exception;

	/*ORDER Division*/
	//MAX값
	String getMaxOrdPseq(Map<String,String> param) throws Exception;
	
	//0일때 조회
	List<OrderVO> getDefaultOrderDivisionList(Map<String,String> param) throws Exception;
	
	//0아닐때 조회
    List<OrderVO> getLastOrderDivisionList(Map<String,String> param) throws Exception;

    //NEW일때
    List<OrderVO> getNewOrderDivisionList(Map<String,String> param) throws Exception;
    
	//저장
	void addOrderDivisionDetail(Map<String,String> param , HttpServletRequest request) throws Exception;
	
	//수정
	boolean modifyOrderDivisionDetail(Map<String,String> param , HttpServletRequest request) throws Exception;
	
	boolean deleteOrderDivisionDetail(Map<String,String> param) throws Exception;

}
